In a computer-based system for servicing user initiated tasks, it is important to maintain a balance between the number of users initiating tasks and the number of workers available to handle user initiated tasks, so that efficiency and/or utility of the system are maintained.
If the balance between users and workers fails to be maintained, several problems can occur in such a system. For example, if there are too many workers in the system, they will not be busy enough and will not earn worthwhile income. In addition, the workers can become bored and uninterested in their work. In contrast, for example, if there are too few workers in the system, user initiated tasks will not be handled in a timely manner, or will be handled by workers not skilled in the particular task area. Poor service and dissatisfied users will be the result.
In addition to other potential problems, handling user initiated tasks often does not allow the workers to become aware of methods and strategies that could be utilized to improve performance on such tasks. Although a worker's performance may increase through trial and error via handling many user initiated tasks, such a process may not allow a worker to increase his or her skills as quickly as desired. Further, handling user initiated tasks does not necessarily expose a worker to techniques that might allow the worker to realize how “the best” service is provided.
In any system which must respond to user initiated tasks, it is difficult to anticipate demand from users. For systems such as a call center, a human assisted search engine, a live help desk, or a transcription or translation system which is intended to provide near real-time service, it is often required to have many more workers than required to meet average demand levels. Just as with systems such as an electric or water utility facility, capacity to meet a ‘surge’ in demand must be available. In such cases, manpower is underutilized as the workers are typically not engaged in the primary activity (e.g., replying to customer product queries, providing search results, etc.). In a typical voice transcription system, utilization levels rarely exceed 75% in long-term average. If such capacity is not provided, the wait time for users may become long, and service quality may suffer. In addition it is desirable to select the best worker to serve a given user initiated task. However the criteria for selection of a ‘best’ worker for a task may change dynamically as workers accept tasks, improve skills, take rest breaks, etc. The time spent by workers on any given activity may deviate from an optimal target due to these factors.
In such systems, it would be advantageous to be able to provide alternate or secondary activities to the workers. Such tasks might include training, image analysis or any other task which might be performed effectively by competent workers which may have a lower priority than the primary activity. However it is difficult to manage the prioritization of these tasks in a dynamic environment in which demand for and supply of secondary activities may vary broadly. Systems such as Amazon® Mechanical Turk which utilize a ‘pull’ system are plagued with such issues.
In light of the foregoing, a system, method, and computer program product for managing secondary activities of workers in, for example, a computer-based system for servicing user initiated tasks would be appreciated. In addition, system, method, and computer-readable medium in which workers in, for example, a computer-based system for servicing user initiated tasks can be trained to improve their performance would be appreciated.